/**
 * 订单增长统计
 * @return {}
 */
Ext.chart.Chart.CHART_URL = __ctxPath + '/ext/resources/charts.swf';
var orderRoseChartForm = function() {
	var orderRoseChartPanel = new Ext.form.FormPanel({
				id : 'orderRoseChartForm',
				frame : true,
				bodyBorder : false,
				anchor : '100% 10%',
				labelAlign : 'right',
				items : [{
					layout : 'column',
					border : false,
					items : [{
						columnWidth : .25,
						layout : 'form',
						border : false,
						items : [{
							xtype : "datefield",
							id : "orderRoseChartStartDate",
							name : "orderRoseStartDate",
							fieldLabel : "开始日期",
							format : "Y-m-d",// 日期的格式
							anchor : "100%",
							listeners : {
								'select' : function() {
									Ext.getCmp('orderRoseChart_checkBoxDay')
											.reset();
									Ext.getCmp('orderRoseChartEndDate')
											.setMinValue(this.getValue());
								}
							}
						}]
					}, {
						columnWidth : .25,
						layout : 'form',
						border : false,
						items : [{
							id : "orderRoseChartEndDate",
							xtype : "datefield",
							name : "orderRoseEndDate",
							fieldLabel : "结束日期",
							anchor : "100%",
							format : "Y-m-d",// 日期的格式
							listeners : {
								'select' : function() {
									Ext.getCmp('orderRoseChart_checkBoxDay')
											.reset();
									Ext.getCmp('orderRoseChartStartDate')
											.setMaxValue(this.getValue());
								}
							}
						}]
					}, {
						columnWidth : .25,
						layout : 'form',
						border : false,
						items : [{
							id : 'orderRoseChart_checkBoxDay',
							xtype : 'radiogroup',
							labelStyle : "text-align:right;",
							height : 20,
							name : 'radioBoxDay',
							fieldLabel : '天数',
							hideLabels : false,
							items : [{
										xtype : 'radio',
										boxLabel : '30天',
										name : 'radioDay',
										inputValue : 30
									}, {
										xtype : 'radio',
										boxLabel : '90天',
										name : 'radioDay',
										inputValue : 90
									}, {
										xtype : 'radio',
										boxLabel : '180天',
										name : 'radioDay',
										inputValue : 180
									}],
							listeners : {
								change : function(obj, newValue, oldValue,
										eOpts) {// 这事件是当radiogroup的值发生改变时进入
									console.info(newValue);
									if (newValue != null && newValue != ''
											&& newValue != 'null') {
										var orderRoseChartStartDate = Ext
												.getCmp('orderRoseChartStartDate')
												.setValue('');
										var orderRoseChartEndDate = Ext
												.getCmp('orderRoseChartEndDate')
												.setValue('');
										queryorderRoseChart();
									}

								}
							}
						}]
					}, {
						columnWidth : .25,
						layout : 'form',
						border : false,
						items : [{
							layout : 'column',
							border : false,
							items : [{
										text : '查询',
										xtype : 'button',
										width : 80,
										handler : function() {
											orderRoseChartHandler();
										},
										style : {
											marginLeft : "100px",
											marginRight : "10px"
										}
									}, {
										text : '重置',
										xtype : 'button',
										width : 80,
										handler : function() {
											Ext.getCmp('orderRoseChartForm')
													.getForm().reset();
											// 对日期的初始设置
											Ext
													.getCmp('orderRoseChartStartDate')
													.setMaxValue(new Date());
											Ext.getCmp('orderRoseChartEndDate')
													.setMinValue("");
										}
									}]
						}]
					}]
				}]
			});
	return orderRoseChartPanel;
}

/**
 * 图表
 * 
 * @return {}
 */
var getPanelView = function() {
	var rosePieChart = new Ext.Panel({
				title : "订单增长趋势图",
				anchor : '100% 90%',
				html : "<div id='orderRoseChartdiv'></div>",
				listeners : {
					"afterrender" : orderRoseChartHandler
				}
			});
	return rosePieChart;
}

/**
 * 订单增长趋势图
 */
function orderRoseChartHandler() {
	var orderRoseChartForm = Ext.getCmp('orderRoseChartForm');
	// 请求数据
	Ext.Ajax.request({
				url : __ctxPath + "/statisticManager/selectOrderRoseChart",
				params : orderRoseChartForm.getForm().getValues(),
				method : "post",
				success : function(response, config) {
					var jsonData = Ext.util.JSON.decode(response.responseText);
					if (jsonData.success) {
						var myChart = new FusionCharts({
									type : 'scrollline2d',
									renderAt : 'orderRoseChartdiv',
									width : "100%",
									height : "100%",
									dataFormat : 'json',
									dataSource : {
										"chart" : {
											"xaxisname" : "日期",
											"yaxisname" : "订单数",
											"palette" : "3",
											"bgcolor" : "FFFFFF",
											"canvasbgcolor" : "66D6FF",
											"canvasbgalpha" : "5",
											"canvasborderthickness" : "1",
											"canvasborderalpha" : "20",
											"legendshadow" : "0",
											"showvalues" : "0",
											"alternatehgridcolor" : "ffffff",
											"alternatehgridalpha" : "100",
											"showborder" : "0",
											"legendborderalpha" : "0",
											"legendiconscale" : "1.5",
											"divlineisdashed" : "1",
											showZeroPlane  : 0,
											showLimits:1
										},
										"categories" : [{
													"category" :jsonData.list.dayList
												}],
										"dataset" : [{
													"seriesname" : "总订单量",
													"color" : "FF0000",
													"data" :jsonData.list.sumOrderList
												}, {
													"seriesname" : "普通订单",
													"color" : "00FF00",
													"data" : jsonData.list.publicOrderList
												}, {
													"seriesname" : "企业订单",
													"color" : "0000FF",
													"data" : jsonData.list.companyOrderList
												}, {
													"seriesname" : "试吃订单",
													"color" : "FFFF00",
													"data" : jsonData.list.eatOrderList
												}, {
													"seriesname" : "免费订单",
													"color" : "00FFFF",
													"data" : jsonData.list.freeOrderList
												}, {
													"seriesname" : "B2B订单",
													"color" : "FF00FF",
													"data" : jsonData.list.b2bOrderList
												}, {
													"seriesname" : "OLC订单",
													"color" : "006400",
													"data" : jsonData.list.olcOrderList
												}, {
													"seriesname" : "大众(美团)订单",
													"color" : "#660077",
													"data" : jsonData.list.meiOrderList
												}, {
													"seriesname" : "生日管家订单",
													"color" : "#FF8888",
													"data" : jsonData.list.guanjiaOrderList
												}, {
													"seriesname" : "亲子周末订单",
													"color" : "#f36a05",
													"data" : jsonData.list.qinziOrderList
												}],
										"styles" : {
											"definition" : [{
														"name" : "captionFont",
														"type" : "font",
														"size" : "15"
													}],
											"application" : [{
														"toobject" : "caption",
														"styles" : "captionfont"
													}]
										}
									}
								});
						myChart.render();
					} else {
						Ext.MessageBox.show({
									title : "操作信息",
									msg : "订单类型统计数据获取失败!",
									buttons : Ext.MessageBox.OK,
									icon : Ext.MessageBox.ERROR
								});
					}
				},
				failure : function(response, config) {
					Ext.MessageBox.show({
								title : "错误提示",
								msg : "服务器请求异常，请稍后再试!",
								buttons : Ext.MessageBox.OK,
								icon : Ext.MessageBox.ERROR
							});
				}
			});

}

Ext.getCmp("centerTabPanel").getActiveTab().add(orderRoseChartForm(),
		getPanelView());
Ext.getCmp("centerTabPanel").getActiveTab().doLayout();